package producter

import (
	"shop_be/model"
	"encoding/json"
	"strconv"

	"shop_be/dao"
	"mime/multipart"
	"os"
	"io"
	"time"
)

func createProducter(product model.Product) model.Msg {
	msg := model.Msg{}
	msg.Code = 0
	msg.Msg = "ok"

	dao.CreateProductDao(product)
	return msg

}

func upLoad(file *multipart.FileHeader) string {
	msg := model.Msg{}
	msg.Code = 0
	msg.Msg = "ok"

	src, err := file.Open()
	if err != nil {
		return ""
	}
	defer src.Close()

	t := time.Now().Format("2006_01_02_15_04_05")
	// Destination
	dst, err := os.Create("shop_be/" + t + ".jpg")
	if err != nil {
		return ""
	}
	defer dst.Close()

	// Copy
	if _, err = io.Copy(dst, src); err != nil {
		return ""
	}

	return t + ".jpg"

}
func updateProduct(book string) model.Msg {
	msg := model.Msg{}
	msg.Code = 0
	msg.Msg = "ok"

	b := model.Product{}
	json.Unmarshal([]byte(book), &b)
	dao.UpdateProductDao(b)
	return msg

}

func deleteProduct(id string) model.Msg {
	msg := model.Msg{}
	msg.Code = 0
	msg.Msg = "ok"

	id1, _ := strconv.Atoi(id)

	b := model.Product{}
	b.Id = id1

	dao.DeleteProductDao(b)

	return msg
}
func findProductById(id string) model.Msg {
	msg := model.Msg{}
	msg.Code = 0
	msg.Msg = "ok"

	id1, _ := strconv.Atoi(id)

	b := dao.FindProductByIdDao(id1)
	msg.Data = b
	return msg
}
func findBookByName(name string) model.Msg {
	msg := model.Msg{}
	msg.Code = 0
	msg.Msg = "ok"

	b := dao.FindProductByNameDao(name)
	msg.Data = b
	return msg
}

func activity() model.Activity {

	a := model.Activity{}
	a.Title = "热门"
	a.Id = 1

	prd := dao.FindProduct()
	i1 := model.Item{}
	i1.Id = prd[0].Id
	i1.Title = prd[0].Name
	i1.ImgUrl = prd[0].Url

	i2 := model.Item{}
	i2.Id = prd[1].Id
	i2.Title = prd[1].Name
	i2.ImgUrl = prd[2].Url

	i3 := model.Item{}
	i3.Id = prd[2].Id
	i3.Title = prd[2].Name
	i3.ImgUrl = prd[2].Url
	a.CpOne = i1
	a.CpTwo = i2
	a.CpThree = i3

	return a

}
func getProduct() []model.Product {

	prd := dao.FindProduct()
	return prd
}

//func bookDamage(id string) model.Msg {
//	msg := model.Msg{}
//	msg.Code = 0
//	msg.Msg = "ok"
//	id1, _ := strconv.Atoi(id)
//
//	b := dao.FindProductByIdDao(id1)
//	b.Damage = true
//
//	dao.UpdateBookDao(b)
//	return msg
//}
